/*
 * Copyright (C) 2012 Johan Boris Iantila jiantila@gmail.com && http://www.facebook.com/johanboris.iantila
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package mg.daloji.antandroyd.receiver;

import mg.daloji.antandroyd.enums.EPhoneState;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telephony.TelephonyManager;

public class CallReicever  extends BroadcastReceiver {
	  
	 
	  private void onReceivePhoneStateChanged(final Context context, final Intent intent) {
	    final String phoneState = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
	    final String phoneNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);
	    Intent myintent=null;
	    if(TelephonyManager.EXTRA_STATE_IDLE.equals(phoneState)){
	    	
	    }
	    if(TelephonyManager.EXTRA_STATE_OFFHOOK.equals(phoneState)){
	    	myintent = new Intent(EPhoneState.EVENT.getValue());
	    	myintent.putExtra(EPhoneState.EVENT.getValue(),EPhoneState.OFFHOOK);
	    }
	    if(TelephonyManager.EXTRA_STATE_RINGING.equals(phoneState)){
	    	 myintent = new Intent(EPhoneState.EVENT.getValue());
	   }
	    if(myintent!=null){
	    	context.sendBroadcast(myintent);
	    }
	    if(phoneNumber != null){
	     }
	   
	  }
	 
	  @Override
	  public void onReceive(final Context context, final Intent intent) {
	    final String action = intent.getAction();
	    if (TelephonyManager.ACTION_PHONE_STATE_CHANGED.equals(action)) {
	      onReceivePhoneStateChanged(context, intent);
	    }
	  }
	}
